package com.xiaolin.springbootdemo.utils;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;
import lombok.Data;

import java.util.List;

/**
 * @ClassName PageUtils
 * @Description 分页工具类
 * @Detail detail
 * @Author MyPC
 * @Date 2021/1/10
 * @Version 1.0
 */
@Data
public class PageUtils<T> {
    // 页码
    private Integer pageNum;
    // 每页记录数
    private Integer pageSize;
    // 总页数
    private Integer pages;
    // 总记录数
    private Long total;
    // 数据
    List<T> list;

    /**
     * 将PageHelper分页后的list转为分页对象
     * @param list
     * @param <T>
     * @return
     */
    public static <T> PageUtils<T> getPageObj(List<T> list){
        PageUtils<T> pageUtils=new PageUtils<>();
        PageInfo<T> pageInfo=new PageInfo<>(list);
        pageUtils.setPageNum(pageInfo.getPageNum());
        pageUtils.setPageSize(pageInfo.getSize());
        pageUtils.setPages(pageInfo.getPages());
        pageUtils.setTotal(pageInfo.getTotal());
        pageUtils.setList(pageInfo.getList());
        return pageUtils;
    }

}
